perm filename QQ.SAI[999,BGB]2 blob sn#021784 filedate 1973-01-25 generic text, type T, neo UTF8
00100	BEGIN "QQ"
00200		REQUIRE "ABBREV[SYS,BGB]" SOURCE_FILE;
00300	
00400		DEFINE CALLI="'047000000000";
00500		DEFINE SWAR ="'043000000000";
00600		DEFINE UPG  ="'703000000000";
00700	
00800		ITG ARRAY DPYBUF [0:13600];
00900		ITG ARRAY FRAME[0:15];
01000		ITG ARRAY SIZE[0:15];
01100		ITG I,J,FLG;
01200		ITG PTR,SIZ;
01300		STRING FILM;
01400		LABEL L1;
01500	
01600	L1:	OUTSTR(↓&9&"FILM NAME = ");
01700		FILM ← INCHWL;
01800		PTR ← 0;
01900	α LOAD 'EM UP;
02000		FOR I←1 TO 40 DO OUTSTR(↓);
02100		FOR I←0 STEP 1 UNTIL '17 DO
02200		BEGIN
02300			OPEN(1,"DSK",8,3,0,0,0,0);
02400			LOOKUP(1,FILM&CVOS(I)&".PLT[999,BGB]",FLG);
02500			IF FLG THEN GO L1;
02600			J ← WORDIN(1);
02700			SIZ ← WORDIN(1);
02800			ARRYIN(1,DPYBUF[PTR],SIZ);
02900			RELEASE(1);
03000			FRAME[I]←LOCATION(DPYBUF[PTR]);
03100			SIZE[I]←SIZ;
03200			PTR←PTR+SIZ;
03300		END;
03400	
     

00100	S⊂ "LOOP" 
00200		LABEL L0,L1,SA,L2,L3;
00300	
00400	α FIRE UP SPACE WAR JOB;
00500	L0:	SETZM I;
00600		MOVEI SA;
00700		HRLI '400014;
00800		CALLI '400003;
00810		CALLI '400017;
00900	
01000	α SLEEP - PER CHANCE TO DREAM;
01100	L1:	MOVEI 1,10;
01200		CALLI 1,'31;
01300		JFCL;
01400		JRST L1;
01500	
01600	α SPACE WAR MODULE;
01700	SA:	AOS 1,I;CAIL 1,'20;SETZB 1,I;
01800		MOVE 1,I; ADD 1,FRAME; MOVE (1); MOVEM PTR;
01900		MOVE 1,I; ADD 1,SIZE;  MOVE (1); MOVEM SIZ;
02000		JRST 3,@L2;L2: L3;L3: UPG PTR;
02100		JFCL;
02200		CALLI '400024;
02300	END;
02400	END "QQ";